A problem arises in that users often have to use more than one software application to perform a particular user's role. So the user needs to flip between multiple applications to carry out all the required tasks of the role.
The software applications which are used may be Rich Client Platforms (RCPs) covering different tasks of a role. The RCPs are commonly built with the same software development kit (SDK), such as Java platform and Swing SDK (Java and Swing are trade marks of Sun Microsystems, Inc.), or Java platform and the Eclipse SDK (Eclipse is a trade mark of Eclipse, Inc.).
For example, to develop a Web services scenario that includes multiple Web service providers (.NET server, WebSphere Application Server, WebSphere Message Broker), a user typically needs to use more than one RCP. This is because each of these Web service providers provides their own RCP, even when they are from the same company.
Additionally, the majority of the functionality of the RCPs are not used by users; a single user may use 20% of three products, yet have to have 100% of all three products installed at all times.